package com.yenlien.traceyun.common.utils;

import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.Arrays;
import java.util.List;

public class DataUtil {


    /**
     * 将数据格式化为指定小数位数
     *
     * @param source 被格式数据
     * @param scale  小数位数
     * @return
     */
    public static double round(double source, int scale) {
        BigDecimal temp = new BigDecimal(source);
        double target = temp.setScale(scale, BigDecimal.ROUND_HALF_UP).doubleValue();
        return target;
    }

    /**
     * 相加
     *
     * @param num1
     * @param num2
     * @return
     */
    public static String add(String num1, String num2) {
        return new BigDecimal(num1).add(new BigDecimal(num2)).toString();
    }

    /**
     * 相减
     *
     * @param num1
     * @param num2
     * @return
     */
    public static String subtract(String num1, String num2) {
        return new BigDecimal(num1).subtract(new BigDecimal(num2)).toString();
    }

    public static BigDecimal subtractDecimal(String num1, String num2) {
        return new BigDecimal(num1).subtract(new BigDecimal(num2));
    }

    /**
     * 乘法
     *
     * @param num1
     * @param num2
     * @return
     */
    public static BigDecimal multiply(String num1, String num2) {
        return new BigDecimal(num1).multiply(new BigDecimal(num2));
    }

    /**
     * 除法
     *
     * @param num1
     * @param num2
     * @return
     */
    public static BigDecimal divide(String num1, String num2) {
        return new BigDecimal(num1).divide(new BigDecimal(num2));
    }

    public static void main(String[] args) {
        System.out.println(add("11.1111", "13.1"));
    }
}
